/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package net.osgg.Controlador;

import java.util.ArrayList;
import java.util.List;
import javax.swing.JTextField;
import net.osgg.Vista.VisualCliente;
import net.osgg.entities.Cliente;
import net.osgg.managers.*;

/**
 *
 * @author Moises
 */
public class ControladorCliente {
private VisualCliente visual;
private ClienteMgr manejador_cliente;


public ControladorCliente(VisualCliente visual){
    this.visual=visual;
    this.manejador_cliente = new ClienteMgrImpl();


}

public void mostrar_todos(){
    List<Cliente> clientes = null;
    clientes = this.manejador_cliente.cargarTodosLosClientes();
    visual.mostrar_datos_en_tabla(clientes);


}

    public void buscar_por_id(int id) {
        List<Cliente> clientes = new ArrayList();
    clientes.add(this.manejador_cliente.buscarClientePorID(id));
    visual.mostrar_datos_en_tabla(clientes);
    }

    public void buscar_por_nombre(String busqueda) {
        List<Cliente> clientes = null;
    clientes = this.manejador_cliente.buscarClientePorNombre(busqueda);
    visual.mostrar_datos_en_tabla(clientes);

    }

    public void actualizar(int id, String txt_nombre, String txt_direccion, String txt_correo) {
        Cliente cliente=new Cliente(txt_nombre,txt_direccion,txt_correo);
        cliente.setId(id);
        this.manejador_cliente.actualizarCliente(cliente);
        this.mostrar_todos();
    }

    public void agregar(String text, String text0, String text1) {
        Cliente cliente =new Cliente(text,text0,text1);
        this.manejador_cliente.guardarClienteNuevo(cliente);
        this.mostrar_todos();
    }

    public void eliminar(int id, String nombre, String direccion, String correo) {
        Cliente cliente=new Cliente(nombre,direccion,correo);
        cliente.setId(id);
        this.manejador_cliente.borrarCliente(cliente);
        this.mostrar_todos();
    }






}
